Amazon Omics の Omics Storage へデータを保存する手順を図解してみた
Amazon Omics の Omics Storage へゲノムデータを保存するとき手順を図解してみました。該当の手順は以下の公式ドキュメントに記載があり、そちらの補足を目的に本記事を参考にしていただければと思います。
- Creating reference and sequence stores - Amazon Omics
- Creating and managing sequence stores - Amazon Omics
- Sequence store imports - Amazon Omics
Omics Storage とは
Omics Storage はゲノムデータを低コストかつ、検索やデータ整理面で効率的に保存できる Amazon Omics の主要コンポーネントのひとつです。 S3(オブジェクトストレージ)や EBS(ブロックストレージ)のように何でもかんでも保存できるストレージはなくゲノムデータ保存専用設計のストレージです。専用設計ですので保存できるファイル形式に制限があります。
データフォーマット別に2つの保存先(データストア)が用意されています。
- リファレンスゲノムを保存するリファレンスストア
- リード配列、シーケンスデータを保存するシーケンスストア
Inventory icons created by Freepik - Flaticon
ストレージの仕様で特徴的なところは、リード配列、シーケンスデータをシーケンスストアへ保存する時、リファレンスストアに保存済みのリファレンスゲノムと関連付けが必須となっています。
デベロッパーガイドの Omics Storage の説明で以下の文章がリファレンスゲノムと関連付け必須の仕様を指しているものと解釈しています。
Omics Storage understands the relationships between different data objects, so you can define which read sets originated from the same source data, offering you data provenance. Omics Storage - Amazon Omics
Omics Storage の利用方法
Omics Storage のリファレンスストアと、シーケンスストアへどのようにファイルを保存するのかは、マネージメントコンソール操作(GUI)での保存方法を以下の記事で紹介しております。
本記事では各ストアへファイルを保存するまでの流れを図解し、公式ドキュメントの補足を目的とします。
リファレンスストア
参考となる公式ドキュメントは以下のリンクです。
保存できるデータフォーマットの制限
FASTA
ファイルのみリファレンスストアへ保存できます。リファレンスストアという名前のとおり、リファレンスゲノム保存専用ストアのようですね。
リファレンスストアへデータ保存
リファレンスストアへリファレンスゲノムを保存するのに必要な作業をまとめました。Omics Storage ではリファレンスストア、シーケンスストアへデータを保存することをインポートと呼びます。
- Amazon Omics と同リージョンの S3 バケットにリファレンスゲノムを保存する
- S3 バケットに保存したリファレンスゲノムをリファレンスストアへのインポートジョブを実行する
- インポートジョブの実行成功 = リファレンスストアへリファレンスゲノム保存完了
- リファレンスストアにリファレンスゲノムが登録される
Inventory icons created by Freepik - Flaticon
リファレンスストアにリファレンスゲノムを保存するためにOmics Storage と同じリージョンの S3 バケットを経由する必要があります。その一点を除けば簡単にリファレンスストアに登録ができます。
シーケンスストア
参考となる公式ドキュメントは以下のリンクです。
保存できるデータフォーマットの制限
FASTQ(.fastq.gz)
, BAM
, CRAM
フォーマットのファイルを保存できます。BAM
より圧縮効率の高いCRAM
フォマーマットにも対応しています。現状サポートしているデータフォマーマットは大別すると2種類となり、FASTQ
ファイルと、SAM
ファイルを圧縮した形式したものと把握しておけばよいかと思います。
シーケンスストアへデータ保存
リファレンスゲノムと関連付けが必須となっている都合、やや複雑な手順になります。
- Amazon Omics と同リージョンの S3 バケットにリードファイルを保存する
- シーケンスストアへデータ保存時(インポート)に必要なマニュフェストファイルを作成する
- シーケンスストアを作成
- S3 バケットに保存したリードファイルをシーケンスストアにインポートするジョブを実行する
- 関連付けるリファレンスゲノムをリファレンスストアから指定
- インポートするリードファイルを指定
- マニュフェストファイルをマネージメントコンソールへアップロード
- シーケンスストアストアにリードファイルが登録される
Inventory icons created by Freepik - Flaticon
リファレンスゲノムとの関連付けはマニュフェストファイルで指定します。
- 事前にリファレンスストアへ登録済みのリファレンスゲノムを
referenceArn:
で指定 - シーケンスストアへ保存するファイルを
sourceFiles:
で指定- 一度に複数のファイルをリファレンスゲノムに関連付けて保存することはできます
sourceFiles: source1: "s3://omics-work/sunflower/HI.1579.001.BioO_21.ann34-cwKS_R1.fastq.gz" source2: "s3://omics-work/sunflower/HI.1579.001.BioO_21.ann34-cwKS_R2.fastq.gz" sourceFileType: "FASTQ" subjectId: "Sunflower" sampleId: "SampleSunflower" referenceArn: "arn:aws:omics:us-east-1:123456789012:referenceStore/1214442314/reference/1922453704" name: "Sunflower"
マニュフェストファイルはマネージメントコンソールへアップロードして利用されます。
※ マネージメントコンソールからのインポート方法する場合はsourceFiles:
で指定したファイルを改めて指定する必要がありました。
2023/1/30追記改めてファイルを指定する必要がないように改善されました。
アップロードされると以下の様にマネージメントコンソールでマニュフェストファイルの内容を確認できます。
各ストアへデータ保存後に気になった箇所
S3 に保存したファイルは削除されません。このまま放置しておくとストレージコストが実質2倍かかることになります。ゲノムデータはファイルサイズが大きい、ファイル数も多くなるだけに S3 と Omics Storage 双方のストレージコストを払うのは得策ではありません。
Inventory icons created by Freepik - Flaticon
各ストアへインポートするために S3 へ保存したファイルは削除しても問題ないか確認後追記したいと思います。
おわりに
私はドキュメントを読んでもピンとこなかったので補足資料として作成しました。ドキュメントと合わせてご覧いただき、Omics Storage 理解の一助を担えれば幸いです。